#include "Probe.h"


/*
===============================================================================
 Name        : Probe.cpp
 Author      : Bram en Paul
 Version     : 0.1
 Description : OOPatronen
===============================================================================
*/

//Statisch voorbeeldobject.
Node* Probe::staticNode = new Probe("PROBE");


/**
 * Constructor
 * 
 * Een Probe krijgt mee of hij hoog of laag is.
 */
Probe::Probe(string ID) : Node(ID)
{
	
}


/**
 * Constructor (alternative)
 */
Probe::Probe() : Node()
{
	
}


/**
 * Operation van Probe
 */
void Probe::operation()
{
	cout << "Final Output: " << (int)inputs[0] << "\n";
	completed = 1;
}


/**
 * Probe wil 1 Input. Deze wordt dan geprint.
 */
void Probe::checkInputQuantity()
{
	if (inputs.size() == 1) {
		operation();
	}
}


/**
 * Functie die een clone van de uitvoerende instantie uitvoert.
 */
Node* Probe::clone()
{
	return new Probe();
}

/**
 * Destructor
 */
Probe::~Probe()
{
	
}
